home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / PlainTalk Developer / Text-to-Speech / Installer Source / TTS_English_14_Install.r < prev    next >
Encoding:
Text File  |  1995-04-17  |  38.2 KB  |  1,088 lines  |  [TEXT/MPS ]

  1. /*------------------------------------------------------------------------------
  2.  *
  3.  *  English Text-to-Speech Installer: 
  4.  *                Installation of English Text-to-Speech software
  5.  *
  6.  *                Copyright © 1994 Apple Computer, Inc.
  7.  *                All rights reserved.
  8.  *
  9.  *    File:        TTS_English_14_Install.r -    Rez Source
  10.  *
  11.  *    Author:        Deric Horn
  12.  *
  13.  *    History:    <1>    (11/8/94) Created this file.
  14.  *                Many updates by Tim Fredenburg.
  15.  *
  16.  *    Build:        
  17.  *                Make -f 'Installer Script.make' 'TTS Installer Script'
  18.  *
  19.  *----------------------------------------------------------------------------*/
  20.  
  21. // NOTES:
  22. //
  23. // We don't have a separate entries to delete old versions of files that
  24. // had a different creator because the Installer can't deal with two
  25. // different file specs that only differ in the creator (it was refusing to
  26. // install over an existing file, or deleting the file and not installing a
  27. // new version).  Examples: MacinTalk 2 used to have a creator of 'ttsc'
  28. // and now has creator 'mtk2'.  Similarly, MacinTalk 3 and its voices used
  29. // to have creator 'ttsc' and now have 'mtk3'.  So we think of the old creator
  30. // files as just old versions of the current files and they get updated or deleted
  31. // by the entry for the current file having the TypeCrNeedNotMatch flag set.
  32.  
  33.  
  34.  
  35. #include    "InstallerTypes.r"
  36. include        "EnglishTTS.rsrc";                                /* vers and splash resources */
  37.  
  38.  
  39.     // Assertions.  Must all have unique values.
  40.     
  41. #define aBootableVolume            1        // Chosen volume can be booted from.
  42. #define aNoSystem                2        // Chosen volume is not bootable.
  43. #define aSystem7                3        // Chosen volume has System 7.0 or later installed.
  44. #define aSystem6Usable            4        // Chosen volume has speech-usable version of System 6.
  45. #define aSystemTooEarly            5        // Chosen volume has a System version too old for speech.
  46.  
  47.  
  48. //    Definition for the user function    //    Gestalt user functions
  49. #define    chkGr33MHz                    1001
  50. include "GestaltFxns.rsrc" 'infn' (1001)  as 'infn' (chkGr33MHz);
  51.  
  52. #if    (Debug)
  53.     include        "Installer Debugger.rsrc" NOT 'vers';
  54. #endif
  55.  
  56. /* Date is the current release date put in 'icmt' rsrc. ScriptCheck will convert  */
  57. #define currentReleaseDate            4301995                    /* Official release date */
  58. #define kTTSVersion                    "1.4"                     /* Version */
  59. #define kTTSVersionIcmt                140                         /* Version goes in the 'icmt' rsrc */
  60.  
  61. /* CONSTANTS: put a 1 in the creation date field of source 'infs' to have ScriptCheck set date */
  62. #define kScriptCheckSetsDate        0x01
  63. #define kMinMemMB                    04                        /* memory needed to install (UPDATE Error Message if changed!)*/
  64.  
  65. /* RULE: Definitions for the rule */
  66. #define rlCheck_DiskSpace_SysExists    1000
  67. #define rlBootDiskError                1001
  68. #define rlCheck_040                    1002
  69. #define rlCheck_Fast030                1003
  70. #define rlCheck_Sys607                1004
  71. #define rlOther_Sys7                1005
  72. #define rlCheck_PPC                    1006
  73. #define rlBootableVolume            1007
  74. #define rlNoSystem                    1008
  75. #define rlSystem7                    1009
  76. #define rlSystem6Usable                1010
  77. #define rlSystemTooEarly            1011
  78. #define rlCheckUsableSystem            1012
  79. #define rlSystemVersionError        1013
  80. #define rlCustomCheck607            1014
  81. #define rlCustomCheckSys7            1015
  82. #define rlCustomSystemVersionError    1016
  83.  
  84. #define diskOrder                    1000                    /* for indo resource */
  85.  
  86. #define sourceFileBase                3000
  87. #define targetFileBase                4000
  88. #define actionAtomBase                sourceFileBase
  89. #define    fsTargetSystem                5000
  90. #define    fsTargetFinder                5001
  91.  
  92. /* PACKAGES: Definition of the packages. */
  93. #define pkInstallEnglishTTS                3000
  94. #define pkInstallMacinTalk2                3001
  95. #define pkInstallMacinTalk3                3002
  96. #define pkInstallMacinTalkPro            3003
  97. #define pkInstallSpeechMgrCustom        3004
  98. #define pkRemoveMacinTalk2                3005
  99. #define pkRemoveMacinTalk3                3006
  100. #define pkRemoveMacinTalkPro            3007
  101. #define pkInstallMacinTalk2_607            3009
  102. #define pkInstallSpeechCDevCustom        3010
  103. #define pkInstallSpeechMgrExtCustom        3011
  104. #define pkInstallSpeechMgr607Custom        3012
  105. #define pkRemoveMisplacedMacinTalk2        3013
  106. #define pkRemoveOldMacinTalk2            3014
  107. #define pkRemoveMisplacedMacinTalk3        3015
  108. #define pkRemoveMisplacedMacinTalkPro    3016
  109. #define pkRemoveOldMacinTalkPro            3017
  110.  
  111. /* COMMENT: Definition for the package comment resource */
  112. #define cmtIEnglishTTS                pkInstallEnglishTTS
  113. #define cmtIMacinTalk2                pkInstallMacinTalk2
  114. #define cmtIMacinTalk3                pkInstallMacinTalk3
  115. #define cmtIMacinTalkPro            pkInstallMacinTalkPro
  116. #define cmtISpeechMgr                pkInstallSpeechMgrCustom
  117. #define cmtISpeechCDev                pkInstallSpeechCDevCustom
  118. #define cmtISpeechMgrExt            pkInstallSpeechMgrExtCustom
  119.  
  120. #define iconEnglishTTS                pkInstallEnglishTTS
  121. #define iconMacinTalk2                pkInstallMacinTalk2
  122. #define iconMacinTalk3                pkInstallMacinTalk3
  123. #define iconMacinTalkPro            pkInstallMacinTalkPro
  124. #define iconSpeechMgr                pkInstallSpeechMgrCustom
  125. #define iconSpeechCDev                pkInstallSpeechCDevCustom
  126. #define iconSpeechMgrExt            pkInstallSpeechMgrExtCustom
  127.  
  128. /* SOURCE DISK: This is the name of the source disks */
  129. #define ProgramDisk1                "English TTS 1:"
  130. #define ProgramDisk2                "English TTS 2:"
  131. #define ProgramDisk3                "English TTS 3:"
  132. #define ProgramDisk4                "English TTS 4:"
  133. #define ProgramDisk5                "English TTS 5:"
  134.  
  135. // File ID's
  136. // These need to be added to sourceFileBase or targetFileBase to get the full ID.
  137. // This script was written without using definitions for file ID's so there aren't
  138. // very many of them #defined yet.
  139.  
  140. // ID's 1-2 are used.
  141. #define fSpeechCDev                    3
  142. #define fSpeechMgr                    4
  143. #define fMT2ExtFolder                5
  144. // ID's 6-7 are used.
  145. #define fSpeechCDevNoRemove            33
  146. #define fSpeechMgrNoRemove            34
  147. // ID's 50-87 are used.
  148. // ID's 100-101 are used.
  149. // ID's 200-210 are used.
  150. #define fDelOldMTVoicesSysFolder    212
  151. #define fDelOldMT2VoicesSysFolder    213
  152. #define fDelMT2ExtFolder            214
  153. #define fDelMT2SysFolder            215
  154. #define fDelMT3SysFolder            216
  155. #define fDelMTPSysFolder            217
  156. // ID's 250-331 are used.
  157. // ID's 350-369 are used.
  158. // ID 400 is used.
  159.  
  160.  
  161. /***************************** Preferences Resource *****************************************/
  162.  
  163. // The only reason we need a preferences resource is to specify the help pages.  We use
  164. // the defaults for all other fields.
  165.  
  166. resource 'inpr' ( 300 )                        // Required resource ID.
  167. {
  168.     format0
  169.     {
  170.         useDiskTargetMode,                    // Since always install in System Folder.
  171.         dontAllowUserToSetSystemDisk,        // Meaningless in Disk Target mode.
  172.         showSelectedSizeInCustom,            // Might be some help.
  173.         noSetupFunctionSupplied,            // None for now.
  174.         dontAllowCleanInstall,                // Not documented but sounds dangerous.
  175.         dontAllowServerAsTarget,            // Unsupported and totally dangerous.
  176.         
  177.         '', 0,                                // No Setup Function.
  178.         
  179.         {
  180.             401, 421, 401, 421,                // Help PICT resource ID's, page 1.
  181.             402, 422, 402, 422,                // Help PICT resource ID's, page 2.
  182.             403, 423, 403, 423,                // Help PICT resource ID's, page 3.
  183.             404, 424, 404, 424,                // Help PICT resource ID's, page 4.
  184.             405, 425, 405, 425,                // Help PICT resource ID's, page 5.
  185.         },
  186.         
  187.         ""                                    // Recommended folder name; not used.
  188.     }
  189. };
  190.  
  191. /***************************** indo Resource ************************************************/
  192. resource 'indo' (DiskOrder) {
  193.     format0 {{
  194.         ProgramDisk1,
  195.         ProgramDisk2,
  196.         ProgramDisk3,
  197.         ProgramDisk4,
  198.         ProgramDisk5,
  199.     }};
  200. };
  201.  
  202.  
  203. /*********************************** Global Rules ********************************************/
  204. //
  205. // Currently, the global rules only set assertions.
  206.  
  207. resource 'infr' ( kGlobalFrameworkRsrcID )                    /* Rule Framework */
  208. {
  209.     format0
  210.     {{
  211.             // Determine whether the chosen volume can be a boot volume.
  212.             
  213.         pickFirst,
  214.         {
  215.             rlBootableVolume,
  216.             rlNoSystem
  217.         },
  218.         
  219.         
  220.             // Determine which version of the OS is installed on the chosen volume.
  221.             
  222.         pickFirst,
  223.         {
  224.             rlSystem7,
  225.             rlSystem6Usable,
  226.             rlSystemTooEarly
  227.         }
  228.     }}
  229. };
  230.  
  231.  
  232.     // Test for chosen volume being bootable.
  233.     
  234. resource 'inrl' ( rlBootableVolume )
  235. {
  236.     format0
  237.     {{
  238.         checkFileRsrcForkExists{ fsTargetSystem },                    // does the system file exist
  239.         checkFileRsrcForkExists{ fsTargetFinder },                    // does the finder exist
  240.         addAssertion{{ aBootableVolume }}
  241.     }}
  242. };
  243.  
  244.  
  245.     // If volume is not bootable, come here to set assertion.
  246.     
  247. resource 'inrl' ( rlNoSystem )
  248. {
  249.     format0
  250.     {{
  251.         addAssertion{{ aNoSystem }}
  252.     }}
  253. };
  254.  
  255.  
  256.     // Check whether chosen volume has System 7.0 or later.
  257.     
  258. resource 'inrl' ( rlSystem7 )
  259. {
  260.     format0
  261.     {{
  262.         checkAllAssertions{{ aBootableVolume }},
  263.         checkFileVersion{ fsTargetSystem, 0x7, 0x00, release, 0x0 }, //    7.0.0 or later
  264.         addAssertion{{ aSystem7 }},
  265.     }}
  266. };
  267.  
  268.  
  269.     // If not System 7 or later, then come here and see if the chosen volume has
  270.     // a version of System 6 that speech runs on.
  271.     
  272. resource 'inrl' ( rlSystem6Usable )
  273. {
  274.     format0
  275.     {{
  276.         checkAllAssertions{{ aBootableVolume }},
  277.         checkFileVersion{ fsTargetSystem, 0x6, 0x07, release, 0x0 }, //    6.0.7 or later
  278.         addAssertion{{ aSystem6Usable }},
  279.     }}
  280. };
  281.  
  282.  
  283.     // If neither System 7 nor a speech-usable version of System 6, see if there's a
  284.     // System that's just too old for speech.
  285.     
  286. resource 'inrl' ( rlSystemTooEarly )
  287. {
  288.     format0
  289.     {{
  290.         checkAllAssertions{{ aBootableVolume }},
  291.         addAssertion{{ aSystemTooEarly }}
  292.     }}
  293. };
  294.  
  295.  
  296. /************************** Rule resources for Easy Install **********************************/
  297. // Rule framework.
  298.  
  299. resource 'infr' ( kEasyInstallFrameworkRsrcID )
  300.     format0
  301.     {{
  302.                 // Easy Install requires a bootable hard disk with a speech-capable
  303.                 // system to install on.
  304.                 
  305.             pickFirst,
  306.             {
  307.                 rlCheckUsableSystem,
  308.                 rlSystemVersionError,
  309.                 rlBootDiskError
  310.             },
  311.                 
  312.                 
  313.                 // Choose the correct packages.  If we get here, we won't fail.
  314.                 
  315.             pickFirst,
  316.             {
  317.                 rlCheck_Sys607,                        // If System 6, processor is unimportant.
  318.                 rlCheck_PPC,                        // For Power Macs.
  319.                 rlCheck_040,                        // For 68040 Macs.
  320.                 rlCheck_Fast030,                    // For 33MHz or faster 68030 Macs.
  321.                 rlOther_Sys7                        // Any other setup comes here.
  322.             }
  323.     }}
  324. };
  325.  
  326. //------------------------------
  327. // Test for a bootable hard disk with a speech-capable System.
  328.  
  329. resource 'inrl' ( rlCheckUsableSystem )
  330. {
  331.     format0
  332.     {{
  333.         checkTgtVolSize{ hardDisk, hardDisk },
  334.         checkAllAssertions{{ aBootableVolume }},
  335.         checkAnyAssertion{{ aSystem6Usable, aSystem7 }}
  336.     }}
  337. };
  338.  
  339. //------------------------------
  340. // Not speech capable system.  If the disk can be booted, report that chosen volume does
  341. // not have a speech-capable System.
  342. // This prevents Easy Install from installing.
  343.  
  344. resource 'inrl' ( rlSystemVersionError )
  345. {
  346.     format0
  347.     {{
  348.         checkAllAssertions{{ aBootableVolume }},
  349.         reportVolError
  350.         {
  351.             "Text-to-Speech requires System Software 6.0.7 or later."
  352.             "  Please click Switch Disk to choose another disk."
  353.         }
  354.     }}
  355. };
  356.  
  357. //------------------------------
  358. // Report that chosen volume is not a bootable hard disk.
  359. // This prevents Easy Install from installing.
  360.  
  361. resource 'inrl' ( rlBootDiskError )
  362. {
  363.     format0
  364.     {{
  365.         reportVolError
  366.         {
  367.             "Text-to-Speech must be installed on a hard disk with system software on it."
  368.             "  Please click Switch Disk to choose another disk."
  369.         }
  370.     }}
  371. };
  372.  
  373. //------------------------------
  374. // System 6 on any Mac.
  375.  
  376. resource 'inrl' (rlCheck_Sys607) {
  377.     format0 {{
  378.         checkAllAssertions{{ aSystem6Usable }},
  379.         addUserDescription {"• MacinTalk 2 Software\n"},            //    message to appear in Easy Install screen
  380.         addPackages {{pkRemoveMacinTalkPro}},
  381.         addPackages {{pkRemoveMacinTalk3}},
  382.         addPackages {{pkInstallMacinTalk2_607}}
  383.     }}
  384. };
  385.  
  386. //------------------------------
  387. // Power Mac.
  388.  
  389. resource 'inrl' (rlCheck_PPC) {
  390.     format0 {{
  391.         checkGestalt {'sysa', { 2 } },                                //    I am a PowerMac
  392.         addUserDescription {"• MacinTalk 3 Software\n"},            //    message to appear in Easy Install screen
  393.         addUserDescription {"• MacinTalk Pro Software\n"},            //    message to appear in Easy Install screen
  394.         addPackages {{pkRemoveMacinTalk2}},
  395.         addPackages {{pkInstallMacinTalk3}},
  396.         addPackages {{pkInstallMacinTalkPro}},
  397.     }}
  398. };
  399.  
  400. //------------------------------
  401. // 68040 Mac.
  402.  
  403. resource 'inrl' (rlCheck_040) {
  404.     format0 {{
  405.         checkGestalt {'proc',{5}},                                    //    processor is a 68040
  406.         addUserDescription {"• MacinTalk 3 Software\n"},            //    message to appear in Easy Install screen
  407.         addUserDescription {"• MacinTalk Pro Software\n"},            //    message to appear in Easy Install screen
  408.         addPackages {{pkRemoveMacinTalk2}},
  409.         addPackages {{pkInstallMacinTalk3}},
  410.         addPackages {{pkInstallMacinTalkPro}},
  411.     }}
  412. };
  413.  
  414. //------------------------------
  415. // 33MHz or faster 68030 Mac.
  416.  
  417. resource 'inrl' (rlCheck_Fast030) {
  418.     format0 {{
  419.         checkGestalt {'proc',{4}},                                    //    processor is a 68030
  420.         checkUserFunction {UserFunctionType, chkGr33MHz, 0x0},        //    Check If machine is not slower then 33 MHz
  421.         addUserDescription {"• MacinTalk 3 Software\n"},            //    message to appear in Easy Install screen
  422.         addPackages {{pkRemoveMacinTalk2}},
  423.         addPackages {{pkRemoveMacinTalkPro}},
  424.         addPackages {{pkInstallMacinTalk3}},
  425.     }}
  426. };
  427.  
  428. //------------------------------
  429. // System 7 on a slow machine.
  430.  
  431. resource 'inrl' (rlOther_Sys7) {
  432.     format0 {{
  433.         addUserDescription {"• MacinTalk 2 Software\n"},            //    message to appear in Easy Install screen
  434.         addPackages {{pkRemoveMacinTalkPro}},
  435.         addPackages {{pkRemoveMacinTalk3}},
  436.         addPackages {{pkInstallMacinTalk2}}
  437.     }}
  438. };
  439.  
  440.  
  441. /************************** Rule resources for Custom Install ********************************/
  442. // Rule framework.
  443.  
  444. resource 'infr' ( kCustomInstallFrameworkRsrcID )
  445.     format0
  446.     {{
  447.                 // Which packages are available depends on the system version.
  448.                 
  449.             pickFirst,
  450.             {
  451.                 rlCustomCheck607,
  452.                 rlCustomCheckSys7,
  453.                 rlCustomSystemVersionError
  454.             }
  455.     }}
  456. };
  457.  
  458. //------------------------------
  459. // Under System 6, only MacinTalk 2 can be installed.
  460.  
  461. resource 'inrl' ( rlCustomCheck607 )
  462. {
  463.     format0
  464.     {{
  465.         checkAllAssertions{{ aSystem6Usable }},
  466.         addCustomItems
  467.         {{
  468.             pkInstallMacinTalk2_607,
  469.             pkInstallSpeechMgr607Custom
  470.         }}
  471.     }}
  472. };
  473.  
  474. //------------------------------
  475. // Under System 7, all synthesizers are possible.
  476.  
  477. resource 'inrl' ( rlCustomCheckSys7 )
  478. {
  479.     format0
  480.     {{
  481.         checkAllAssertions{{ aSystem7 }},
  482.         addCustomItems
  483.         {{
  484.             pkInstallEnglishTTS,
  485.             pkInstallMacinTalk2,
  486.             pkInstallMacinTalk3,
  487.             pkInstallMacinTalkPro,
  488.             pkInstallSpeechMgrCustom
  489.         }}
  490.     }}
  491. };
  492.  
  493. //------------------------------
  494. // Report that chosen volume does not have a speech-capable System.
  495. // This prevents Custom Install from installing.
  496.  
  497. resource 'inrl' ( rlCustomSystemVersionError )
  498. {
  499.     format0
  500.     {{
  501.         reportVolError
  502.         {
  503.             "Text-to-Speech requires System Software 6.0.7 or later."
  504.             "  Please click Switch Disk to choose another disk."
  505.         }
  506.     }}
  507. };
  508.  
  509.  
  510. /***************************** Package Resources ************************************************/
  511.  
  512. resource 'inpk' (pkInstallEnglishTTS) {
  513.     format0 {
  514.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  515.         removable,                        // include package or subpackage as a removeable item
  516.         forceRestart,                    // make user reboot his computer after install
  517.         cmtIEnglishTTS,                     // ID of package comments ( 'inpc' ) rsrc defined below
  518.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  519.         "All English Text-to-Speech Software",     // Custom Install selection text
  520.         {    
  521.             'inpk', pkInstallMacinTalk2;    //    Installs MacinTalk 2 package
  522.             'inpk', pkInstallMacinTalk3;    //    Installs MacinTalk 3 package
  523.             'inpk', pkInstallMacinTalkPro;    //    Installs MacinTalk Pro package
  524.         }
  525.     }
  526. };
  527.  
  528. //------------------------------
  529. // Install MacinTalk 2 files that work with both System 6 and System 7
  530.  
  531. resource 'inpk' (pkInstallMacinTalk2_607) {
  532.     format0 {
  533.         doesntShowOnCustom,             // Can't have ShowOnCustom; used as a sub-package.
  534.         removable,                        // include package or subpackage as a removeable item
  535.         forceRestart,                    // make user reboot his computer after install
  536.         cmtIMacinTalk2,                     // ID of package comments ( 'inpc' ) rsrc defined below
  537.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  538.         "MacinTalk 2 Software",             // Custom Install selection text
  539.         {    
  540.             'inpk', pkRemoveOldMacinTalk2;                    // Remove old versions of MacinTalk 2.
  541.  
  542.             'infa', sourceFileBase + 1;                        //    Install "Using English Text-to-Speech"
  543.             'infa', sourceFileBase + fMT2ExtFolder;            //    Install "MacinTalk 2"
  544.  
  545.             'infa', sourceFileBase + fSpeechMgrNoRemove;    //    Install "Speech Manager"
  546.             'inra', sourceFileBase + 100;    //    Install Resource "MacinTalk 2 ttsp"    (Extensions:Speech Manager)
  547.  
  548.             'infa', sourceFileBase + 50;    //    Install "Ben"        (Extensions:Voices:)
  549.             'infa', sourceFileBase + 51;    //    Install "Boris"        (Extensions:Voices:)
  550.             'infa', sourceFileBase + 52;    //    Install "Brenda"    (Extensions:Voices:)
  551.             'infa', sourceFileBase + 53;    //    Install "Mariel"    (Extensions:Voices:)
  552.             'infa', sourceFileBase + 54;    //    Install "Marvin"    (Extensions:Voices:)
  553.             'infa', sourceFileBase + 55;    //    Install "Mr. Hughes"(Extensions:Voices:)
  554.             'infa', sourceFileBase + 56;    //    Install "Otis"        (Extensions:Voices:)
  555.             'infa', sourceFileBase + 57;    //    Install "RoboVox"    (Extensions:Voices:)
  556.             'infa', sourceFileBase + 58;    //    Install "Votron"    (Extensions:Voices:)
  557.             'infa', sourceFileBase + 59;    //    Install "Xero"        (Extensions:Voices:)
  558.         }
  559.     }
  560. };
  561.  
  562. //------------------------------
  563. // Install MacinTalk 2 for System 7 only.
  564.  
  565. resource 'inpk' (pkInstallMacinTalk2) {
  566.     format0 {
  567.         doesntShowOnCustom,             // Can't have ShowOnCustom; used as a sub-package.
  568.         removable,                        // include package or subpackage as a removeable item
  569.         forceRestart,                    // make user reboot his computer after install
  570.         cmtIMacinTalk2,                     // ID of package comments ( 'inpc' ) rsrc defined below
  571.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  572.         "MacinTalk 2 Software",         // Custom Install selection text
  573.         {    
  574.                 // Remove MacinTalk 2 files in alternative locations.  Only for System 7,
  575.                 // since this would remove possibly newer files in the correct locations
  576.                 // under System 6.
  577.             'inpk', pkRemoveMisplacedMacinTalk2;
  578.  
  579.             'inpk', pkInstallMacinTalk2_607;    //    Install the 6.0.7 MacinTalk 2 package
  580.  
  581.             'infa', sourceFileBase + 2;        //    Install "SimpleText"
  582.             'infa', sourceFileBase + fSpeechCDevNoRemove;        //    Install "Speech"
  583.         }
  584.     }
  585. };
  586.  
  587. //------------------------------
  588. // Install MacinTalk 3.
  589.  
  590. resource 'inpk' (pkInstallMacinTalk3) {
  591.     format0 {
  592.         doesntShowOnCustom,             // Can't have ShowOnCustom; used as a sub-package.
  593.         removable,                        // include package or subpackage as a removeable item
  594.         forceRestart,                    // make user reboot his computer after install
  595.         cmtIMacinTalk3,                     // ID of package comments ( 'inpc' ) rsrc defined below
  596.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  597.         "MacinTalk 3 Software",         // Custom Install selection text
  598.         {    
  599.             'inpk', pkRemoveMisplacedMacinTalk3;    // Remove files from non-canonical locations.
  600.  
  601.             'infa', sourceFileBase + 1;        //    Install "Using English Text-to-Speech"
  602.             'infa', sourceFileBase + 2;        //    Install "SimpleText"
  603.             'infa', sourceFileBase + fSpeechCDevNoRemove;    //    Install "Speech"
  604.             'infa', sourceFileBase + 6;        //    Install "MacinTalk 3"
  605.  
  606.             'infa', sourceFileBase + fSpeechMgrNoRemove;    //    Install "Speech Manager"
  607.             'inra', sourceFileBase + 101;    //    Install Resource "MacinTalk 3 ttsp"    (Extensions:Speech Manager)
  608.  
  609.             'infa', sourceFileBase + 60;    //    Install "Albert"    (Extensions:Voices:)
  610.             'infa', sourceFileBase + 61;    //    Install "Bad News"    (Extensions:Voices:)
  611.             'infa', sourceFileBase + 62;    //    Install "Bahh"        (Extensions:Voices:)
  612.             'infa', sourceFileBase + 63;    //    Install "Bells"        (Extensions:Voices:)
  613.             'infa', sourceFileBase + 64;    //    Install "Boing"        (Extensions:Voices:)
  614.             'infa', sourceFileBase + 65;    //    Install "Bubbles"    (Extensions:Voices:)
  615.             'infa', sourceFileBase + 66;    //    Install "Cellos"    (Extensions:Voices:)
  616.             'infa', sourceFileBase + 67;    //    Install "Deranged"    (Extensions:Voices:)
  617.             'infa', sourceFileBase + 68;    //    Install "Fred"        (Extensions:Voices:)
  618.             'infa', sourceFileBase + 69;    //    Install "Good News"    (Extensions:Voices:)
  619.             'infa', sourceFileBase + 70;    //    Install "Hysterical"(Extensions:Voices:)
  620.             'infa', sourceFileBase + 71;    //    Install "Junior"    (Extensions:Voices:)
  621.             'infa', sourceFileBase + 72;    //    Install "Kathy"        (Extensions:Voices:)
  622.             'infa', sourceFileBase + 73;    //    Install "Pipe Organ"(Extensions:Voices:)
  623.             'infa', sourceFileBase + 74;    //    Install "Princess"    (Extensions:Voices:)
  624.             'infa', sourceFileBase + 75;    //    Install "Ralph"        (Extensions:Voices:)
  625.             'infa', sourceFileBase + 76;    //    Install "Trinoids"    (Extensions:Voices:)
  626.             'infa', sourceFileBase + 77;    //    Install "Whisper"    (Extensions:Voices:)
  627.             'infa', sourceFileBase + 78;    //    Install "Zarvox"    (Extensions:Voices:)
  628.         }
  629.     }
  630. };
  631.  
  632. //------------------------------
  633. // Install MacinTalk Pro.
  634.  
  635. resource 'inpk' (pkInstallMacinTalkPro) {
  636.     format0 {
  637.         doesntShowOnCustom,             // Can't have ShowOnCustom; used as a sub-package.
  638.         removable,                        // include package or subpackage as a removeable item
  639.         forceRestart,                    // make user reboot his computer after install
  640.         cmtIMacinTalkPro,                 // ID of package comments ( 'inpc' ) rsrc defined below
  641.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  642.         "MacinTalk Pro Software",         // Custom Install selection text
  643.         {
  644.             'inpk', pkRemoveMisplacedMacinTalkPro;    // Remove files from non-canonical locations.
  645.             'inpk', pkRemoveOldMacinTalkPro;        // Remove old versions of MacinTalk Pro.
  646.  
  647.  
  648.             'infa', sourceFileBase + fSpeechCDevNoRemove;    //    Install "Speech"
  649.             'infa', sourceFileBase + fSpeechMgrNoRemove;    //    Install "Speech Manager"
  650.             'infa', sourceFileBase + 1;        //    Install "Using English Text-to-Speech"
  651.             'infa', sourceFileBase + 2;        //    Install "SimpleText"
  652.             'infa', sourceFileBase + 7;        //    Install "MacinTalk Pro"
  653.             'infa', sourceFileBase + 80;    //    Install "Agnes"        (Extensions:Voices:)
  654.             'infa', sourceFileBase + 81;    //    Install "Bruce"        (Extensions:Voices:)
  655.             'infa', sourceFileBase + 82;    //    Install "Victoria"    (Extensions:Voices:)
  656.         }
  657.     }
  658. };
  659.  
  660.  
  661. //============================================================
  662. // The Speech Manager packages for Custom Install/Remove.
  663.  
  664. //------------------------------
  665. // Speech Manager for System 7 or later, i.e. can install cdev.
  666.  
  667. resource 'inpk' (pkInstallSpeechMgrCustom)
  668. {
  669.     format0
  670.     {
  671.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  672.         removable,                        // include package or subpackage as a removeable item
  673.         forceRestart,                    // make user reboot his computer after install
  674.         cmtISpeechMgr,                     // ID of package comments ( 'inpc' ) rsrc defined below
  675.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  676.         "Speech Manager Software",         // Custom Install selection text
  677.         {    
  678.             'inpk', pkInstallSpeechMgrExtCustom;// Installs Package "Speech Manager Extension"
  679.             'inpk', pkInstallSpeechCDevCustom;// Installs Package "Speech Control Panel"
  680.         }
  681.     }
  682. };
  683.  
  684. //------------------------------
  685. // Sub-package for Speech Manager, System 7.  Allow user to install just the extension.
  686.  
  687. resource 'inpk' (pkInstallSpeechMgrExtCustom)
  688. {
  689.     format0
  690.     {
  691.         showsOnCustom,                     // if a subpackage, then show in Custom Install
  692.         removable,                        // include package or subpackage as a removeable item
  693.         forceRestart,                    // make user reboot his computer after install
  694.         cmtISpeechMgrExt,                 // ID of package comments ( 'inpc' ) rsrc defined below
  695.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  696.         "Speech Manager Extension",     // Custom Install selection text
  697.         {    
  698.             'infa', sourceFileBase + fSpeechMgr;        //    Install "Speech Manager"
  699.         }
  700.     }
  701. };
  702.  
  703. //------------------------------
  704. // Sub-package for Speech Manager, System 7.  Allow user to install just the cdev.
  705.  
  706. resource 'inpk' (pkInstallSpeechCDevCustom)
  707. {
  708.     format0
  709.     {
  710.         showsOnCustom,                     // if a subpackage, then show in Custom Install
  711.         removable,                        // include package or subpackage as a removeable item
  712.         forceRestart,                    // make user reboot his computer after install
  713.         cmtISpeechCDev,                     // ID of package comments ( 'inpc' ) rsrc defined below
  714.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  715.         "Speech Control Panel",         // Custom Install selection text
  716.         {    
  717.             'infa', sourceFileBase + fSpeechCDev;        //    Install "Speech"
  718.         }
  719.     }
  720. };
  721.  
  722. //------------------------------
  723. // Speech Manager for System 6; no cdev.
  724.  
  725. resource 'inpk' (pkInstallSpeechMgr607Custom)
  726. {
  727.     format0
  728.     {
  729.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  730.         removable,                        // include package or subpackage as a removeable item
  731.         forceRestart,                    // make user reboot his computer after install
  732.         cmtISpeechMgr,                     // ID of package comments ( 'inpc' ) rsrc defined below
  733.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  734.         "Speech Manager Software",         // Custom Install selection text
  735.         {    
  736.             'infa', sourceFileBase + fSpeechMgr;        //    Install "Speech Manager"
  737.         }
  738.     }
  739. };
  740.  
  741.  
  742. //============================================================
  743. // Removal packages
  744.  
  745. //------------------------------
  746. // Remove previous versions of MacinTalk 2.
  747.  
  748. resource 'inpk' ( pkRemoveOldMacinTalk2 )
  749. {
  750.     format0
  751.     {
  752.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  753.         notRemovable,                    // include package or subpackage as a removeable item
  754.         dontForceRestart,                // make user reboot his computer after install
  755.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  756.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  757.         "",                             // Custom Install selection text
  758.         {    
  759.             'infa', sourceFileBase + 201;                        //    Delete "MacinTalk Voices"    (Extensions:)
  760.             'infa', sourceFileBase + 202;                        //    Delete "MacinTalk Voices"    (Extensions:Voices:)
  761.             'infa', sourceFileBase + fDelOldMTVoicesSysFolder;    //    Delete "MacinTalk Voices"    (System Folder:)
  762.  
  763.             'infa', sourceFileBase + 203;                        //    Delete "MacinTalk2 Voices"    (Extensions:)
  764.             'infa', sourceFileBase + 204;                        //    Delete "MacinTalk2 Voices"    (Extensions:Voices:)
  765.             'infa', sourceFileBase + fDelOldMT2VoicesSysFolder;    //    Delete "MacinTalk2 Voices"    (System Folder:)
  766.         }
  767.     }
  768. };
  769.  
  770. //------------------------------
  771. // Remove current MacinTalk 2 files that are not in the canonical location.
  772. // Only use this with System 7 or greater; under System 6 this can remove
  773. // files that are in the right location.
  774.  
  775. resource 'inpk' ( pkRemoveMisplacedMacinTalk2 )
  776. {
  777.     format0
  778.     {
  779.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  780.         notRemovable,                    // include package or subpackage as a removeable item
  781.         dontForceRestart,                // make user reboot his computer after install
  782.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  783.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  784.         "",                             // Custom Install selection text
  785.         {    
  786.             'infa', sourceFileBase + fDelMT2SysFolder;            //    Delete "MacinTalk 2" (System Folder:)
  787.             
  788.             'infa', sourceFileBase + 350;    //    Delete "Ben"        (Extensions:)
  789.             'infa', sourceFileBase + 352;    //    Delete "Boris"        (Extensions:)
  790.             'infa', sourceFileBase + 354;    //    Delete "Brenda"        (Extensions:)
  791.             'infa', sourceFileBase + 356;    //    Delete "Mariel"        (Extensions:)
  792.             'infa', sourceFileBase + 358;    //    Delete "Marvin"        (Extensions:)
  793.             'infa', sourceFileBase + 360;    //    Delete "Mr. Hughes"    (Extensions:)
  794.             'infa', sourceFileBase + 362;    //    Delete "Otis"        (Extensions:)
  795.             'infa', sourceFileBase + 364;    //    Delete "RoboVox"    (Extensions:)
  796.             'infa', sourceFileBase + 366;    //    Delete "Votron"        (Extensions:)
  797.             'infa', sourceFileBase + 368;    //    Delete "Xero"        (Extensions:)
  798.         }
  799.     }
  800. };
  801.  
  802. //------------------------------
  803. // Remove MacinTalk 2 completely.  Used by Easy Install, NOT Custom Remove.
  804.  
  805. resource 'inpk' ( pkRemoveMacinTalk2 )
  806. {
  807.     format0
  808.     {
  809.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  810.         notRemovable,                    // include package or subpackage as a removeable item
  811.         dontForceRestart,                // make user reboot his computer after install
  812.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  813.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  814.         "",                             // Custom Install selection text
  815.         {    
  816.             'inpk', pkRemoveOldMacinTalk2;                // Remove old versions of MacinTalk 2.
  817.             'inpk', pkRemoveMisplacedMacinTalk2;        // Remove MacinTalk 2 files in alternative locations.
  818.             
  819.                 // Remove MacinTalk 2 files from their normal locations.
  820.             'infa', sourceFileBase + fDelMT2ExtFolder;    //    Delete "MacinTalk 2"    (Extensions:)
  821.             'infa', sourceFileBase + 351;                //    Delete "Ben"        (Extensions:Voices:)
  822.             'infa', sourceFileBase + 353;                //    Delete "Boris"        (Extensions:Voices:)
  823.             'infa', sourceFileBase + 355;                //    Delete "Brenda"        (Extensions:Voices:)
  824.             'infa', sourceFileBase + 357;                //    Delete "Mariel"        (Extensions:Voices:)
  825.             'infa', sourceFileBase + 359;                //    Delete "Marvin"        (Extensions:Voices:)
  826.             'infa', sourceFileBase + 361;                //    Delete "Mr. Hughes"    (Extensions:Voices:)
  827.             'infa', sourceFileBase + 363;                //    Delete "Otis"        (Extensions:Voices:)
  828.             'infa', sourceFileBase + 365;                //    Delete "RoboVox"    (Extensions:Voices:)
  829.             'infa', sourceFileBase + 367;                //    Delete "Votron"        (Extensions:Voices:)
  830.             'infa', sourceFileBase + 369;                //    Delete "Xero"        (Extensions:Voices:)
  831.         }
  832.     }
  833. };
  834.  
  835. //------------------------------
  836. // Remove current MacinTalk 3 files that are not in the canonical location.
  837.  
  838. resource 'inpk' ( pkRemoveMisplacedMacinTalk3 )
  839. {
  840.     format0
  841.     {
  842.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  843.         notRemovable,                    // include package or subpackage as a removeable item
  844.         dontForceRestart,                // make user reboot his computer after install
  845.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  846.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  847.         "",                             // Custom Install selection text
  848.         {    
  849.             'infa', sourceFileBase + fDelMT3SysFolder;            //    Delete "MacinTalk 3" (System Folder:)
  850.             
  851.             'infa', sourceFileBase + 250;    //    Delete "Albert"        (Extensions:)
  852.             'infa', sourceFileBase + 252;    //    Delete "Bad News"    (Extensions:)
  853.             'infa', sourceFileBase + 254;    //    Delete "Bahh"        (Extensions:)
  854.             'infa', sourceFileBase + 256;    //    Delete "Bells"        (Extensions:)
  855.             'infa', sourceFileBase + 258;    //    Delete "Boing"        (Extensions:)
  856.             'infa', sourceFileBase + 260;    //    Delete "Bubbles"    (Extensions:)
  857.             'infa', sourceFileBase + 262;    //    Delete "Cellos"        (Extensions:)
  858.             'infa', sourceFileBase + 264;    //    Delete "Deranged"    (Extensions:)
  859.             'infa', sourceFileBase + 266;    //    Delete "Fred"        (Extensions:)
  860.             'infa', sourceFileBase + 268;    //    Delete "Good News"    (Extensions:)
  861.             'infa', sourceFileBase + 270;    //    Delete "Hysterical"    (Extensions:)
  862.             'infa', sourceFileBase + 272;    //    Delete "Junior"        (Extensions:)
  863.             'infa', sourceFileBase + 274;    //    Delete "Kathy"        (Extensions:)
  864.             'infa', sourceFileBase + 276;    //    Delete "Pipe Organ"    (Extensions:)
  865.             'infa', sourceFileBase + 278;    //    Delete "Princess"    (Extensions:)
  866.             'infa', sourceFileBase + 280;    //    Delete "Ralph"        (Extensions:)
  867.             'infa', sourceFileBase + 282;    //    Delete "Trinoids"    (Extensions:)
  868.             'infa', sourceFileBase + 284;    //    Delete "Whisper"    (Extensions:)
  869.             'infa', sourceFileBase + 286;    //    Delete "Zarvox"        (Extensions:)
  870.         }
  871.     }
  872. };
  873.  
  874. //------------------------------
  875. // Remove MacinTalk 3 completely.  Used by Easy Install, NOT Custom Remove.
  876.  
  877. resource 'inpk' ( pkRemoveMacinTalk3 )
  878. {
  879.     format0
  880.     {
  881.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  882.         notRemovable,                    // include package or subpackage as a removeable item
  883.         dontForceRestart,                // make user reboot his computer after install
  884.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  885.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  886.         "",                             // Custom Install selection text
  887.         {    
  888.             'inpk', pkRemoveMisplacedMacinTalk3;        // Remove MacinTalk 3 files in alternative locations.
  889.             
  890.                 // Remove MacinTalk 3 files from their normal locations.
  891.             'infa', sourceFileBase + 207;    //    Delete "MacinTalk 3"(Extensions:)
  892.             'infa', sourceFileBase + 251;    //    Delete "Albert"        (Extensions:Voices:)
  893.             'infa', sourceFileBase + 253;    //    Delete "Bad News"    (Extensions:Voices:)
  894.             'infa', sourceFileBase + 255;    //    Delete "Bahh"        (Extensions:Voices:)
  895.             'infa', sourceFileBase + 257;    //    Delete "Bells"        (Extensions:Voices:)
  896.             'infa', sourceFileBase + 259;    //    Delete "Boing"        (Extensions:Voices:)
  897.             'infa', sourceFileBase + 261;    //    Delete "Bubbles"    (Extensions:Voices:)
  898.             'infa', sourceFileBase + 263;    //    Delete "Cellos"        (Extensions:Voices:)
  899.             'infa', sourceFileBase + 265;    //    Delete "Deranged"    (Extensions:Voices:)
  900.             'infa', sourceFileBase + 267;    //    Delete "Fred"        (Extensions:Voices:)
  901.             'infa', sourceFileBase + 269;    //    Delete "Good News"    (Extensions:Voices:)
  902.             'infa', sourceFileBase + 271;    //    Delete "Hysterical"    (Extensions:Voices:)
  903.             'infa', sourceFileBase + 273;    //    Delete "Junior"        (Extensions:Voices:)
  904.             'infa', sourceFileBase + 275;    //    Delete "Kathy"        (Extensions:Voices:)
  905.             'infa', sourceFileBase + 277;    //    Delete "Pipe Organ"    (Extensions:Voices:)
  906.             'infa', sourceFileBase + 279;    //    Delete "Princess"    (Extensions:Voices:)
  907.             'infa', sourceFileBase + 281;    //    Delete "Ralph"        (Extensions:Voices:)
  908.             'infa', sourceFileBase + 283;    //    Delete "Trinoids"    (Extensions:Voices:)
  909.             'infa', sourceFileBase + 285;    //    Delete "Whisper"    (Extensions:Voices:)
  910.             'infa', sourceFileBase + 287;    //    Delete "Zarvox"        (Extensions:Voices:)
  911.         }
  912.     }
  913. };
  914.  
  915. //------------------------------
  916. // Remove previous versions of MacinTalk Pro.
  917.  
  918. resource 'inpk' ( pkRemoveOldMacinTalkPro )
  919. {
  920.     format0
  921.     {
  922.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  923.         notRemovable,                    // include package or subpackage as a removeable item
  924.         dontForceRestart,                // make user reboot his computer after install
  925.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  926.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  927.         "",                             // Custom Install selection text
  928.         {    
  929.             'infa', sourceFileBase + 205;    //    Delete "PlainTalk™ Text-to-Speech"    (Extensions:)
  930.             'infa', sourceFileBase + 206;    //    Delete "MacinTalkPro 2"                (Extensions:)
  931.  
  932.             'infa', sourceFileBase + 290;    //    Delete "TTS Female Voice"            (Extensions:)
  933.             'infa', sourceFileBase + 291;    //    Delete "TTS Female Voice"            (Extensions:Voices:)
  934.             'infa', sourceFileBase + 292;    //    Delete "TTS Male Voice"                (Extensions:)
  935.             'infa', sourceFileBase + 293;    //    Delete "TTS Male Voice"                (Extensions:Voices:)
  936.             'infa', sourceFileBase + 294;    //    Delete "TTS Male Voice, Compressed"    (Extensions:)
  937.             'infa', sourceFileBase + 295;    //    Delete "TTS Male Voice, Compressed"    (Extensions:Voices:)
  938.             'infa', sourceFileBase + 296;    //    Delete "TTS Victoria"                (Extensions:)
  939.             'infa', sourceFileBase + 297;    //    Delete "TTS Victoria"                (Extensions:Voices:)
  940.             'infa', sourceFileBase + 298;    //    Delete "TTS Agnes"                    (Extensions:)
  941.             'infa', sourceFileBase + 299;    //    Delete "TTS Agnes"                    (Extensions:Voices:)
  942.             'infa', sourceFileBase + 300;    //    Delete "TTS Bruce"                    (Extensions:)
  943.             'infa', sourceFileBase + 301;    //    Delete "TTS Bruce"                    (Extensions:Voices:)
  944.         }
  945.     }
  946. };
  947.  
  948. //------------------------------
  949. // Remove current MacinTalk Pro files that are not in the canonical location.
  950.  
  951. resource 'inpk' ( pkRemoveMisplacedMacinTalkPro )
  952. {
  953.     format0
  954.     {
  955.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  956.         notRemovable,                    // include package or subpackage as a removeable item
  957.         dontForceRestart,                // make user reboot his computer after install
  958.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  959.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  960.         "",                             // Custom Install selection text
  961.         {    
  962.             'infa', sourceFileBase + fDelMTPSysFolder;            //    Delete "MacinTalk Pro" (System Folder:)
  963.  
  964.             'infa', sourceFileBase + 314;    //    Delete "Agnes"                        (Extensions:)
  965.             'infa', sourceFileBase + 316;    //    Delete "Bruce"                        (Extensions:)
  966.             'infa', sourceFileBase + 318;    //    Delete "Victoria"                    (Extensions:)
  967.         }
  968.     }
  969. };
  970.  
  971. //------------------------------
  972. // Remove MacinTalk Pro completely.  Used by Easy Install, NOT Custom Remove.
  973.  
  974. resource 'inpk' (pkRemoveMacinTalkPro) {
  975.     format0 {
  976.         doesntShowOnCustom,             // if a subpackage, then show in Custom Install
  977.         notRemovable,                    // include package or subpackage as a removeable item
  978.         dontForceRestart,                // make user reboot his computer after install
  979.         0,                                 // ID of package comments ( 'inpc' ) rsrc defined below
  980.         0,                                // Package size ( if 0, filled in by ScriptCheck )
  981.         "Remove MacinTalk Pro Software",     // Custom Install selection text
  982.         {    
  983.             'inpk', pkRemoveOldMacinTalkPro;            // Remove old versions of MacinTalk Pro.
  984.             'inpk', pkRemoveMisplacedMacinTalkPro;        // Remove MacinTalk Pro files in alternative locations.
  985.             
  986.                 // Remove MacinTalk Pro files from their normal locations.
  987.             'infa', sourceFileBase + 208;    //    Delete "MacinTalk Pro"                (Extensions:)
  988.             'infa', sourceFileBase + 315;    //    Delete "Agnes"                        (Extensions:Voices:)
  989.             'infa', sourceFileBase + 317;    //    Delete "Bruce"                        (Extensions:Voices:)
  990.             'infa', sourceFileBase + 319;    //    Delete "Victoria"                    (Extensions:Voices:)
  991.         }
  992.     }
  993. };
  994.  
  995.  
  996. /***************************** Comments ************************************************/
  997. // NOTE: ignore the warning from ScriptCheck about these comments not being needed
  998. // because the packages have doesntShowOnCustom set.  The custom rules install the
  999. // packages and then the comments are available.
  1000.  
  1001. resource 'icmt' (cmtIEnglishTTS) {
  1002.     currentReleaseDate,
  1003.     kTTSVersionIcmt,
  1004.     iconEnglishTTS,
  1005.     "This package contains all of Apple's software that's used to have English text spoken aloud."
  1006.     "  This includes the MacinTalk 2, MacinTalk 3, and MacinTalk Pro text-to-speech synthesizers."
  1007. };
  1008.  
  1009. resource 'icmt' (cmtIMacinTalk2) {
  1010.     currentReleaseDate,
  1011.     kTTSVersionIcmt,
  1012.     iconMacinTalk2,
  1013.     "This package contains the MacinTalk 2 software, best for less powerful Macintoshes"
  1014.     " and on Macintoshes running System Software 6.0.7 or later."
  1015. };
  1016.  
  1017. resource 'icmt' (cmtIMacinTalk3) {
  1018.     currentReleaseDate,
  1019.     kTTSVersionIcmt,
  1020.     iconMacinTalk3,
  1021.     "This package contains the MacinTalk 3 software, useful under System 7,"
  1022.     " on Macintoshes with a 68030 processor of at least 33MHz,"
  1023.     " or any Macintosh with a 68040 or PowerPC processor."
  1024. };
  1025.  
  1026. resource 'icmt' (cmtIMacinTalkPro) {
  1027.     currentReleaseDate,
  1028.     kTTSVersionIcmt,
  1029.     iconMacinTalkPro,
  1030.     "This package contains the MacinTalk Pro software, useful under System 7,"
  1031.     " on Macintoshes with a 68040 or PowerPC processor."
  1032. };
  1033.  
  1034. resource 'icmt' (cmtISpeechMgr) {
  1035.     currentReleaseDate,
  1036.     kTTSVersionIcmt,
  1037.     iconSpeechMgr,
  1038.     "This package contains the Speech Manager software, used by all text-to-speech synthesizers."
  1039. };
  1040.  
  1041. resource 'icmt' (cmtISpeechMgrExt) {
  1042.     currentReleaseDate,
  1043.     kTTSVersionIcmt,
  1044.     iconSpeechMgr,
  1045.     "This package contains the Speech Manager Extension,"
  1046.     " required for text-to-speech."
  1047. };
  1048.  
  1049. resource 'icmt' (cmtISpeechCDev) {
  1050.     currentReleaseDate,
  1051.     kTTSVersionIcmt,
  1052.     iconSpeechCDev,
  1053.     "This package contains the Speech Control Panel,"
  1054.     " used to select options for text-to-speech."
  1055. };
  1056.  
  1057.  
  1058.  
  1059. /***************************** Special File Specs *************************************/
  1060.  
  1061. resource 'intf' (fsTargetSystem)     /* File Spec */
  1062. {
  1063.     format0
  1064.     {
  1065.         noSearchForFile,
  1066.         TypeCrNeedNotMatch,            // Type is 'ZSYS' for 6.0.7, 'zsys' for 7.0.
  1067.         'zsys',
  1068.         'MACS',
  1069.         0x0,
  1070.         "special-macs:System"
  1071.     }
  1072. };
  1073.  
  1074. resource 'infs' (fsTargetFinder) {     /* File Spec */
  1075.     'FNDR',
  1076.     'MACS',
  1077.     0x0,
  1078.     noSearchForFile,
  1079.     TypeCrMustMatch,
  1080.     "special-macs:Finder"
  1081. };
  1082.  
  1083.  
  1084. /***************************** All Other File Specs *************************************/
  1085. #include    "InstallFiles_TTS14.r"
  1086.